package kt04.simple3;

import java.util.ArrayList;
import java.util.List;

public class TestOutIn1 {
    FuClass fuClass = new FuClass();
    ZiClass ziClass = new ZiClass();

    public  void main(String[] args) {
        // 作用一：可以接收更多的类型
        List<? extends FuClass> list = new ArrayList<ZiClass>();// 协变解决
        //由于是【生产者】
        //只能获取 == 生产者
        FuClass fuClass = list.get(0);

//        不能修改 == 不能消费
//        list.add(fuClass);
//        list.add(ziClass);

        // 作用一：可以接收更多的类型
        List<? super ZiClass> list1 = new ArrayList<FuClass>();// 逆变解决
        // 由于是 【消费者】

        // 不能获取 == 不能生产
        // ZiClass zi = list2.get(0);

        // 能修改 == 消费者
        list1.add(ziClass);
//        list1.add(fuClass);
    }

}
